package com.zpark.repository;

import com.zpark.pojo.Movie;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import javax.transaction.Transactional;
import java.util.List;

/**
 * 使用JPA技术完成数据库的操作
 * t:表示操作的实体类是谁
 * id:对应的主键的数据类型，和实体类的id一直
 * CLASS
 */
public interface MovieRepository extends JpaRepository<Movie,Integer> {
    //表示增删改查的注解
    //pageable表示分页的对象，指定起始数据和最终的数据
    @Query(value = "select * from ranking where film_index",nativeQuery = true)
    List<Movie>getMoviePage(Integer film_index, Pageable pageable);//第一页的数据，每页数据显示3条

    @Transactional
    @Modifying
    @Query("update ranking r set r.filmName=?1 where r.id=?2")
    int updateMovie(String filmName, Integer id);

    @Transactional
    @Modifying
    @Query("delete ranking r where r.id=?1")
    int deleteMovie(Integer id);


}
